home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue56 / Clinic / CDSDeltaU.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  2000-02-25  |  1.5 KB  |  68 lines

  1. unit CDSDeltaU;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   Grids, DBGrids, Db, DBClient, StdCtrls, DBCtrls, ExtCtrls;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     DataSource1: TDataSource;
  12.     DBGrid1: TDBGrid;
  13.     CDS2: TClientDataSet;
  14.     DBGrid2: TDBGrid;
  15.     DataSource2: TDataSource;
  16.     CDS2SpeciesNo: TFloatField;
  17.     CDS2Category: TStringField;
  18.     CDS2Common_Name: TStringField;
  19.     CDS2SpeciesName: TStringField;
  20.     CDS2Lengthcm: TFloatField;
  21.     CDS2Length_In: TFloatField;
  22.     CDS2Notes: TMemoField;
  23.     CDS2Graphic: TGraphicField;
  24.     CDS2Type: TStringField;
  25.     DBNavigator1: TDBNavigator;
  26.     DBImage1: TDBImage;
  27.     DBImage2: TDBImage;
  28.     DBMemo1: TDBMemo;
  29.     DBMemo2: TDBMemo;
  30.     CDS1: TClientDataSet;
  31.     procedure CDS1AfterChange(DataSet: TDataSet);
  32.     procedure CDS2CalcFields(DataSet: TDataSet);
  33.   private
  34.     { Private declarations }
  35.   public
  36.     { Public declarations }
  37.   end;
  38.  
  39. var
  40.   Form1: TForm1;
  41.  
  42. implementation
  43.  
  44. {$R *.DFM}
  45.  
  46. procedure TForm1.CDS1AfterChange(DataSet: TDataSet);
  47. begin
  48.   CDS2.Close;
  49.   //Error arises if Delta is empty
  50.   if CDS1.ChangeCount > 0 then
  51.   begin
  52.     CDS2.Data := CDS1.Delta;
  53.     CDS2.Open
  54.   end
  55. end;
  56.  
  57. procedure TForm1.CDS2CalcFields(DataSet: TDataSet);
  58. begin
  59.   case CDS2.UpdateStatus of
  60.     usUnmodified: CDS2Type.Value := 'Unmodified';
  61.     usModified:   CDS2Type.Value := 'Modified';
  62.     usInserted:   CDS2Type.Value := 'Inserted';
  63.     usDeleted:    CDS2Type.Value := 'Deleted';
  64.   end
  65. end;
  66.  
  67. end.
  68.